home *** CD-ROM | disk | FTP | other *** search
/ Graphics Plus / Graphics Plus.iso / msdos / fractal / mand32 / mand32.doc next >
Text File  |  1993-12-06  |  7KB  |  165 lines

  1. ------------------
  2. Mand32 version 2.0
  3. ------------------
  4.  
  5. Mand32 generates a mandelbrot set in a variety of resolutions. Its name is a
  6. combination of mandelbrot, a mathematically chaotic construct, and 32, which
  7. represents the 32,000 color mode Mand is capable of using. This version is
  8. not crippled, but upgrades are only available by order (see bottom).
  9.  
  10.                 resolution      colors
  11.  
  12. available       320x200         256, 32k
  13. modes           640x350              32k
  14.                 640x400         256, 32k
  15.                 640x480         256, 32k
  16.                 800x600         256, 32k
  17.                 1024x768        256
  18.  
  19.  
  20. What's a Mandelbrot?
  21. --------------------
  22.  
  23. Mandelbrot sets live in the complex plane. To generate a set, you take
  24. the simple equation Zn+1 = Zn ^2 + C, Zo = 0, and note whether it goes
  25. to infinity or not. Note that Z and C are complex numbers. Colors are
  26. determined by one of three methods: "scalar", "logarithmic", or "sine".
  27. The scalar method iterates the above equation until the normal of Z
  28. exceedes 2 or the number of iterations exceedes 256. If the number of
  29. iterations exceedes 256, it assumes the point will never reach infinity
  30. and assigns it a color value of zero. Otherwise it assigns a color based
  31. on how many iterations it had to go through before Z exceeded 2. This
  32. generates a traditional set. The logarithmic method runs every point
  33. through 8 iterations, and then assigns it a color proportional to the
  34. logarithm of the norm of Z. This is faster than the traditional method,
  35. and gives the old set a new and intresting look. The sine runs every point
  36. through 4 iterations, takes the sine, and assigns colors based on the result.
  37. You would think that this would destroy all the structure of the set... but
  38. this isn't the case. Try it and see :) Many floating point calculations are
  39. involved for all three methods, so mandelbrot generation tends to be slow
  40. on many machines, but the result are a seris of amazingly beautiful images.
  41. To estimate how many seconds it will take to draw a set on your PC in a
  42. given resolution mode, run mtest.
  43.  
  44.  
  45. Instructions
  46. ------------
  47.  
  48. Mand32 has two basic modes: image generation and command. When Mand32 first
  49. starts, it is in image generation mode, any key stroke will interupt it and
  50. place you in command mode.
  51.  
  52. Image generation mode:
  53.  
  54. There are 5 methods of image generation: Draft, Rough, Precision, Fast, and
  55. Ultra. Precision is the slowest, but results in the absolute best possible 
  56. image. It checks every pixel on the screen. Draft plots one out of every 100
  57. pixels. Rough plots one out of every 25 pixels. Draft and rough are best used
  58. for a quick approximation of a section that you aren't really intrested in,
  59. but want to expand a section of. Fast tries to reduce the number of pixels
  60. that needs to be checked without losing image quality. Basically, it checks
  61. four points, and if they give the same result, draws a filled box. If they
  62. aren't, Fast checks every pixel within the four points. Ultra is simular to
  63. Fast, but uses larger boxes. When you first load Mand32 or when you expand
  64. a section of an image, Mand32 first runs a Rough approximation and then
  65. redraws the screen in Fast. This is so you have a general idea what the
  66. screen will look like before waiting for the full generation. You can enter
  67. command mode at any time by hitting a key.
  68.  
  69. Command mode:
  70.  
  71. A hollow box will appear in the upper left hand corner. This box can be
  72. moved across the screen by use of the numeric keypad (make sure num lock is
  73. on). From this point you can expand the section of the set under the box,
  74. change the size of the box, change the display algorithm, or switch back to
  75. image generation in Draft, Rough, Precision, Fast, or Ultra mode.
  76.  
  77.         key strokes:
  78.          +              increase box size
  79.          -              decrease box size
  80.          q              quit Mand32
  81.          E              expand screen (zooms back away from set)
  82.          e              expand box (zooms into screen)
  83.          D              Draft entire screen
  84.          d              Draft interior of box
  85.          R              Rough entire screen
  86.          r              Rough interior of box
  87.          P              Precision entire screen
  88.          p              Precision interior of box
  89.          F              Fast entire screen
  90.          f              Fast interior of box
  91.          U              Ultra entire screen
  92.          u              Ultra interior of box
  93.          a              switches between logarithmic and scalar analysis
  94.          3              generates a 3D plot of the screen (cool)
  95.          c              in 32k mode, switches between red/blue/green,
  96.                         just blue, just green, and just red color schemes
  97.          t              alternates display type between normal, log, and sine
  98.  
  99. O.K. lets go over an example: You load of Mand32, and it starts to generate
  100. a Rough image. After the Rough is complete, you decide to skip the Precision
  101. image generation and blow up a section in the upper right hand side. So you
  102. hit a key, and after Mand32 finishes its current row, the command box pops
  103. up. Scroll it over to the right area, and make the box bigger with the '+'
  104. key. However, you suddenly grow curious as to what the Precision image looks
  105. like. You could hit 'P' to Precision generate the whole screen, or you could
  106. hit 'p' to Precision generate just the area under the box. You like what you
  107. see, so 'e' to expand the box...
  108.  
  109.  
  110. History
  111. -------
  112.  
  113. Version 1.0
  114. Slow first try, it worked but not well.
  115.  
  116. Version 1.3
  117. Sped up routine by factor of 2, added 3d generation.
  118. Beta tested.
  119.  
  120. Version 2.0
  121. Sped up routine by factor of 9, think I've trimmed all the junk off now.
  122. Minor bugs fixed, changed image generation functions, polished everything.
  123.  
  124.  
  125. Known bugs
  126. ----------
  127.  
  128. Only works with cards that support either svga 256 color mode or svga 32k
  129. color mode.
  130.  
  131. Will crash in log or sine mode if you zoom out from the set, as opposed to
  132. zooming in, too much.
  133.  
  134.  
  135. Upgrade Plans
  136. -------------
  137.  
  138. For 3.0 (sometime January 1994):
  139. Support for a variety of specific video cards, save screen as standard
  140. Windows bitmap, misc cosmetic changes, fix any bugs that come up in 2.0.
  141.  
  142. Up in air (maybe 3.0, maybe 4.0, maybe never):
  143. Mouse support, generate log file which can later be used as a script, rewrite
  144. part of code in assembly, support for MIDI files as background music, support
  145. 64k color mode, palette rotation, go Windows.
  146.  
  147.  
  148. To order an upgrade
  149. -------------------
  150.  
  151. Send $5 to $10 over my way:
  152.  
  153. Daniel Lemberg
  154. 110 West 39th Street
  155. Apartment 515
  156. Baltimore, MD 21210
  157.  
  158. And I'll ship you the latest version.
  159.  
  160. -------------------------------------------------------------------------
  161. Whether you order or not, I worked hard to make Mand32 a beautiful and
  162. useable product, and sincerely hope you enjoy it. Feel free to e-mail me
  163. at lemberg@jhunix.hcf.jhu.edu with comments and suggestions.
  164. -------------------------------------------------------------------------
  165.